A data center typically refers to a large group of networked computer servers typically used by organizations for the remote storage, processing, or distribution of large amounts of data. A data center typically uses virtualized servers running on the physical servers and serving multiple client organizations (tenants). With a multitenant architecture, a software application is designed to virtually partition its data and configuration, and each tenant works with a customized virtual application. Typically, server to server traffic is known as east-west traffic, while client-server traffic is known as North-South traffic.
Generally, virtualization refers to technologies designed to provide a layer of abstraction between computer hardware systems and the software running on them. A hypervisor or virtual machine monitor (VMM) typically refers to a piece of computer software, firmware or hardware that creates and runs virtual machines (VMs). VMs are created within a virtualization layer, such as a hypervisor or a virtualization platform that runs on top of a client or server operating system. The virtualization layer can be used to create many individual, isolated VM environments. Typically, VMs are the operating systems that run on hypervisors. With hypervisors, multiple operating systems can run concurrently on a host machine because the hypervisor abstracts the hardware resources and manages their allocations.
Generally, cloud computing refers to a model of network computing where a program or application runs on a connected server or servers in the data center rather than on a local computing device such as a personal computer, tablet or smartphone. The computing process may run on one or many connected computers at the same time, utilizing the concept of virtualization. With virtualization, one or more physical servers of the data center can be configured and partitioned into multiple independent virtual servers, all functioning independently and appearing to the user to be a single physical device. The virtual machine typically emulates a physical computing environment, but requests for CPU, memory, hard disk, network and other hardware resources are managed by a virtualization layer which translates these requests to the underlying physical hardware.
Existing network monitoring tools generally require specialized hardware, a physical probe, and wires located on the physical layer of the network. For example, the existing network monitoring tools use a data monitoring switch (e.g., Switched Port Analyzer (SPAN)) to send a copy of network packets seen on one switch port to a network monitoring connection on another switch port. A data monitoring switch is a networking hardware appliance that provides a pool of monitoring tools with access to traffic from a large number of network links. The existing network monitoring tools typically use a rack-mounted hardware network packet broker (NPB) device that gathers and aggregates the network traffic from the switch SPAN ports and then distributes that traffic to network security and performance tools.
The existing network monitoring tools are mostly manually controlled. Moreover, the existing network monitoring tools are typically fixed, static and un-scalable hardware appliances. They are expensive and slow to deploy. A virtual machine environment creates blind spots and reduces visibilities of the network. East-west traffic between virtual machines in the data center strains the ability of the data center to manage network and optimize work flow. However, the existing network monitoring tools lack virtual network visibility. The existing network monitoring tools may not obtain individual tenant data in a multi-tenant data center. The existing network monitoring tools lack scalability and agility to cope with dynamic network changes in a virtual machine environment.